With the advances in communication and internet technologies, direct marketing and sales channels became popular among customers. Among the sales channels companies currently using are contact centers, web sites, direct sales force, stores sales, etc. Some of these channels such as contact centers and web sites are different in nature than more traditional sales channels such as a sales force or in-store sales in that contact center and web based services usually accessible over extended periods of time.
Contact centers may also offer a plurality of services. For example, services offered may include general information, technical support, billing, and others.
At a contact center organization, contacts may be received through phone, chat, email, postal mail, etc. Contacts received via each channel are processed based on the needs of customers by contact center agents (“agent”). Each combination of revenue or service type offered and channel used is called a contact group (“contact group”). For example, billing-email, sales-phone, and support-chat may be some of the contact groups in a contact center organization.
A contact group used by customers to order products or services is referred to as a “revenue contact group”, and a contact group used only for obtaining some type of service such as general information, technical help, etc. a “service contact group” in the remainder of this patent document.
Contact centers make forecasts of number of contacts offered (“NCO”), that is the number of contacts that customers are expected to attempt, and average service time its agents will need to serve a contact (“average handling time” or “AHT”) for all contact groups they manage. These forecasts are used to develop agent schedules, staffing requirements, and performance projections.
Each contact group is assigned a performance target. For example, a service contact group (e.g. technical support via phone) may have a service level target (“SL”) of answering x % of calls in y seconds. Another type of performance target for service contact groups specifies a maximum abandonment percentage (“Ab %”) for customers who abandon or a maximum value acceptable for average speed of answer (“ASA”) for contacts that are eventually served. These performance targets are together referred to as productivity-based targets (“productivity-based target”). Productivity-based performance targets are used for service contact groups.
Contact centers may be skills-based or non-skills based. In a non-skills based routing environment, each contact center agent is assigned to serve one contact group only. In a skills-based environment, an agent may have one or more skills to serve one or more contact groups. Contacts are routed to agents based on skills, availability and other routing preferences and rules. Agents may serve a plurality of contact groups depending on their skills and routing rules.
Agents with the same skills, proficiency, handling preferences and routing rules form a skill group (“skill group”). Thus, each agent is a member of a skill group with other agents sharing the same skills, proficiency, preferences, etc.
In a non-skills based environment, staffing models such as Erlang C or the Palm model (Palm, 1957) is used to determine the required staffing levels (also called “agent requirements”) to deliver services at the performance target level. For this purpose, these models take the forecasted NCO, AHT and performance targets for each contact group and provide the required staffing levels to deliver services at the targeted performance level. Agents are then scheduled to meet the required staffing levels.
Agent schedules are generated by a variety of heuristics, and Mixed Integer Linear Programming methods. For example, U.S. Pat. No. 5,911,134 issued on Jun. 8, 1999 to Castonguay et al. describes a method for determining the required staffing levels using Erlang C and a heuristic method using a set of rules for scheduling agents in a non-skills based environment.
Likewise, U.S. Pat. No. 6,278,978 issued on Aug. 21, 2001 to Andre et al. describes a method that may be used to post-process an initial schedule set available from another source by applying a rule-based interchange procedure for scheduling agents in a non-skills based environment.
U.S. Pat. No. 6,044,355 issued on Mar. 28, 2000 to Crockett et al. describes a simulation method for developing agent schedules in a skills-based routing environment involving multiple agent groups, each with a plurality of skills, and a plurality of contact types requiring different agent skills. The method uses a heuristic scheduler and a simulator.